//
//  HMBaseTableViewController.swift
//  Weibo
//
//  Created by 米易雅克 on 16/4/9.
//  Copyright © 2016年 米易雅克. All rights reserved.
//

import UIKit

//class HMBaseTableViewController: UITableViewController,HMVisitorViewDelegate {
class HMBaseTableViewController: UITableViewController {
    

    var userLogin = HMUserAccountViewModel.sharedInstance.userLogin
    
    override func loadView() {
        
        userLogin ? super.loadView() : setupView()
    }
//    设置访客视图
   private func setupView() {
        
        view = visitorView
    // 5.设置访客视图的代理,当设置代理后,没有实现这个协议会报错

    visitorView.delegate = self
//        设置每个控制器图片和信息
    if self is HMHomeTableViewController{
        visitorView.startRation()
        
    }else if self is HMMessageTableViewController{
    
    visitorView.setVisitorViewInfo("visitordiscover_image_message", Message: "登录后，别人评论你的微博，发给你的消息，都会在这里收到通知")
        
    }else if self is HMDiscoverTableViewController{
    
    visitorView.setVisitorViewInfo("visitordiscover_image_message", Message: "登录后，最新、最热微博尽在掌握，不再会与实事潮流擦肩而过")
    }else {
    
    visitorView.setVisitorViewInfo("visitordiscover_image_profile", Message: "登录后，你的微博、相册、个人资料会显示在这里，展示给别人")
    
    }
    
    
//    设置导航条左右按钮
    navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", style: UIBarButtonItemStyle.Plain, target: self, action: #selector(HMBaseTableViewController.visitorViewDidClickRegisterButton))
    navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登陆", style: UIBarButtonItemStyle.Plain, target: self, action: #selector(HMBaseTableViewController.visitorViewDidClickLoginButton))
    
     }

////    实现点击按钮事件
//    func didClickRegist() {
//    
//    print("didClickRegist")
//    }
//    func didClickLogin() {
//    print("didClickLogin")
//    }
    
//MARK:    懒加载访客视图
   private lazy var visitorView : HMVisitorView = HMVisitorView()
    
// 扩展和OC的分类很像,只能扩展方法,可以让对象实现协议,好处方便管理代码
    
    
}
extension HMBaseTableViewController: HMVisitorViewDelegate {
    
    
    
    /// 6.需要实现协议里面的方法,如果不实现非optional的方法还是会报错
    func visitorViewDidClickLoginButton() {
        
        let oauthVc = HMOauthViewController()
//        包装一个导航控制器
        let navOatuhVc = UINavigationController(rootViewController: oauthVc)
        
        presentViewController(navOatuhVc, animated: true, completion: nil)
    }
    func visitorViewDidClickRegisterButton() {
        print("visitorViewDidClickRegisterButton")
    }
    
}
